Developed by ASC, FTPShare is a set of communications applications which allow a Macintosh to be used as a multi-session background FTP file server. It can be accessed by any computer with an FTP client application over a TCP/IP network.
FTPShare provides a user access scheme similar to the one available in Apple's File Sharing for System 7.0, and allows :
- Files to be transferred between a Macintosh and FTP Clients,
- Up to 20 clients to connect at the same time,
- An access profile to be given to each user,
- Guest users to connect to the file server,
- Support of Aliases
- and many other features…
As the File Sharing, FTPShare comprises four components :
- FTPShare Setup : an application to start, stop and configure the server,
- FTPShare Monitor : an application to monitor the server's activity,
- FTPShare Users : an application to define the users profiles,
- FTPShare Extension : an INIT to install in the System Folder.
FTPShare works in the background of the Macintosh leaving it free to be used as usual. It also provides a monitor which allows you to control who is connected to the file server and which folders are being accessed.
Although FTPShare supports some special System 7.0 features such as Aliases and Balloon Help, it can also be used on System 6.0.4 machines.
This is the only part of the FTPShare package where a few explanations could be of some help…
The FTP Users Folder
-------------------
The users you define through the FTPShare Users application are stored as files, and they must be kept in the same folder as the application if you want them to be recognized by the FTP server. This FTP Users folder can be stored anywhere on your hard disk. As for any other folder, you may set views by icons, small icons or sorted by name.
The Entry Folders
----------------
You must define for each user an "Entry Folder" which is the folder that the user will first have access to when opening a session with the FTP server. A user has access to all the files and folders included in its Entry Folder.
You can also define its access privilege to these items (Read-Only, Write-Only or Read-and-Write).
An Entry Folder can contain files, folders or aliases. For example, if a user asks to receive an alias file, it will not receive the alias but the original file. Similarly, the "admin" user can send the Change Directory command specifying the "Server" AppleShare volume alias: in which case the volume is automatically mounted provided that the AppleShare File Server does not require a password.
Important : For security reasons, if the alias of a folder is not directly included in the Entry Folder, in the "FTP Users" Folder or in one of their sub-directories, the user will not be allowed to enter in the original folder.
The User Icon
------------
When configuring a user profile, if you do not check "Allow user to connect" or "Allow guest to connect", an X appears through the user's icon. Note also the difference between a USser icon and a Guest Icon : a Guest Icon is partially grayed out.
If you enter ??? as password when configuring a user profile, the user will be asked to configure the password when connecting to the server for the first time.
Once the new password is entered, it must be confirmed through the account (ACCT) command.
Owner's Privileges
-----------------
The owner can launch an application on the server, or reboot the server. To launch an application, send the command LNCH <application>. To reboot the server, send the command BOOT. These commands can be useful to install an INIT or a driver on the server.
Log Files
--------
If you create a "FTPShare Logs" folder inside your FTPShare folder (where are stored the Users), FTPShare uses it to store Log files. A new Log file is created every sunday morning.
Guests identification
-------------------
If the "FTPShare Logs" folder exists, FTPShare asks the guests (or "anonymous") to send their email address as password, and it stores it in the Log files.
Remote users management
------------------------
The "NUSR <username> <password>" command (or "quote NUSR <username> <password>" from a Unix machine) allows to create a new user and its associated "<username>.dir" directory with read/write access. This command is only available when logged onto the server with Owner privileges. Obviously, the User file and its directory can later be deleted with the standard FTP commands.
Let the users configure their password
-----------------------------------
If you enter "???" as password when configuring a user profile, the user is asked to configure the password when connecting to the server for the first time. Once the new password is entered, it must be confirmed through the account (or ACCT) command.
Owner's privileges
-----------------
The owner can launch an application on the server, or reboot the server. To launch an application, send the command LNCH <application>. To reboot the server, send the command BOOT. These commands can be useful to install an INIT or a driver on the server.
About paths
-----------
Full paths can be used by the owner for every command (send, receive, rename, delete, …) except the list commands (LIST and NLST). They can only be used by the users in the Change Working Directory command (CWD).
About lists
----------
Files lists are returned by the FTPShare server under a form similar to the one used by Unix FTP servers, for exemple :
flags size date type name
vrwx 7179264 May 20 04:15 - HD-Internal/
vrwx 29707264 May 20 04:36 - Mail/
-rwm 10052 May 20 04:16 mac AppleShare PDS
-rw- 1580 Jun 8 1991 txt asc_States.c
-rw- 422 Mar 27 07:06 txt Clipboard 0
-rwx 5435 Feb 28 11:48 mac Configure CEToolbox
---m 106425 Jan 01 1991 mac Desktop
---m 73728 May 20 05:54 mac Desktop DB
---m 498048 May 20 04:45 mac Desktop DF
drwx 42 May 20 04:15 - Desktop Folder
lrwd - Mar 31 03:48 - controls -> Control Panels
-rw- 13133 Nov 26 1991 txt FTPack.log
lrwx - Nov 14 1991 mac HC 2 -> HyperCard 2.0
Flags
The first letter can be v for a volume, d for a directory, l for an alias or - for a file.
The second letter is r if the user has Read access to the item, - otherwise.
The third letter is w if the user has Write access to the item, - otherwise.
The fourth letter can be x for an application or a directory in which the user can see files, - for a Text file or m for any other Macintosh file (which should be received in MacBinary format). However, if the item is an alias, the fourth letter displays the type of the original item : d for a volume or a folder, x for an application, - for a Text file, or m for other Macintosh files.
Size
The size is displayed in bytes used for files or volumes, in number of included files for directories. The size of an alias is not displayed because it would take to long a time to retreive the size of the original item.
Date
As in Unix systems, the date is displayed under the format "month/day year" for items which have not been modified during the last six month, and under the format "month/day hour:minute" otherwise.
Type
This column displays the type of the item, and thus the file transfer mode which should be used to read it. The type can be - for volumes or directories, txt for Text files and mac for applications and all other files which should be received using the MacBinary file transfer mode.
Name
This column displays the name of the item. If it is an alias, the name is followed by an arrow "->" and the name of the original item.
POWER USERS
If you issue the "site MAC" command, the file lists display the files signatures. Enter "site UNIX" to return to the standard mode.
VM/CMS USERS
If the FTP client on your host does not support filename containing spaces, enter the "site VM" command just after login. FTPShare then turns spaces into underscores '_' when listing a directory, and vice-versa when you send a command followed by a filename (cd, get, put, ...). Enter "site UNIX" or "site MAC" to return to the standard mode.
About memory
-------------
FTPShare needs about 120k for one session, and about 40k for each additionnal session.
For better performances, you should set a Cache Size of 128 or 256 Kb in the Memory Control Panel.
As for many other INITs, keeping the mouse button pressed at startup time deactivates FTPShare: it's not even loaded in memory.
Aliases Resolution
-----------------
You must define for each user an "Entry Folder" which is the folder that the user will first have access to when opening a session with the FTP server. A user has access to all the files and folders included in its Entry Folder. You can also define its access privilege to these items : Read-Only, Write-Only or Read-and-Write.
With System 7, the Entry Folders can also contain aliases of files, folders or volumes. When a user specify an alias, it receives the original file or has access to the original folder.
Note 1: If a user accesses to an alias which points to an item stored on an un-mounted AppleShare volume, the volume is automatically mounted provided that the AppleShare File Server does not require a password.
Note 2: For security reasons, if an alias of a folder (or an alias of a disk) is not directly included in the Entry Folder, in the "FTP Users" folder or in one of their sub-directories, the user is not be allowed to access to the original folder.
Note 3: For technical reasons, the aliases of aliases are not supported.